#ifndef ORDEN_H
#define ORDEN_H
#include <QDjangoModel.h>
#include <QObject>
#include <Entidades/sucursal.h>
#include <Entidades/paciente.h>
#include <Entidades/medico.h>
#include <Entidades/estado.h>
#include <Entidades/origen.h>
#include <Entidades/seguro.h>

class Orden:public QDjangoModel
{
    Q_OBJECT
    Q_PROPERTY(int nro_orden READ getNro_orden WRITE setNro_orden)
    Q_PROPERTY(Sucursal *sucursal READ getSucursal WRITE setSucursal)
    Q_PROPERTY(Origen *origen READ getOrigen WRITE setOrigen)
    Q_PROPERTY(Paciente *paciente READ getPaciente WRITE setPaciente)
    Q_PROPERTY(Medico *medico READ getMedico WRITE setMedico)    
    Q_PROPERTY(QString prioridad READ getPrioridad WRITE setPrioridad)
    Q_PROPERTY(QDate fecha_recibida READ getFecha_recibida WRITE setFecha_recibida)
    Q_PROPERTY(QDate fecha_compromiso READ getFecha_compromiso WRITE setFecha_compromiso)
    Q_PROPERTY(Estado *estado READ getEstado WRITE setEstado)
    Q_PROPERTY(Seguro *seguro READ getSeguro WRITE setSeguro)
    Q_CLASSINFO("nro_orden", "primary_key=true")

public:
    explicit Orden(QObject *parent = 0);

    Sucursal *getSucursal() const;
    void setSucursal(Sucursal *value);

    Origen *getOrigen() const;
    void setOrigen(Origen *value);

    Paciente *getPaciente() const;
    void setPaciente(Paciente *value);

    Medico *getMedico() const;
    void setMedico(Medico *value);

    Estado *getEstado() const;
    void setEstado(Estado *value);

    int getNro_orden() const;
    void setNro_orden(int value);

    QString getPrioridad() const;
    void setPrioridad(const QString &value);

    QDate getFecha_recibida() const;
    void setFecha_recibida(const QDate &value);

    Seguro *getSeguro() const;
    void setSeguro(Seguro *value);

    QDate getFecha_compromiso() const;
    void setFecha_compromiso(const QDate &value);

private:
    int nro_orden;
    QString prioridad;
    QDate fecha_recibida, fecha_compromiso;
};

#endif // ORDEN_H
